package com.tchy.cloud.entity;

import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;

import javax.persistence.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import static javax.persistence.GenerationType.IDENTITY;

/**
 * Created by xiaoji on 2017/2/20.
 */
@Entity
@Table(name = "a_customer", schema = "", catalog = "")
public class ACustomerEntity implements Serializable {
    private Long customerId;
    private AConsultantEntity aConsultantEntity;
    private String phone;
    private Integer bandPhone;
    private String wxOpenid;
    private Integer bandWx;
    private String pwd;
    private String avatar;
    private String avatarBackgrounp;
    private String nickname;
    private String realname;
    private Integer follow;
    private Integer fans;
    private Integer isCounselor;
    private Integer sex;
    private Date birthday;
    private Integer marry;
    private Integer occu;
    private java.util.Date registeTime;
    private Byte isOnline;
    private Date heartTime;
    private String autograph;
    private BigDecimal balance;
    private Integer score;
    private String alipayAccount;
    private String wxAccount;
    private String bankNumber;
    private String bankAccount;
    private String province;
    private String city;
    private String area;
    private String address;
    private String certType;
    private String certNumber;
    private String certImage;
    private String certImage2;
    private String presentPwd;
    private Integer qgzt;
    private String cusBrief;
    private Integer memberGrade;
    private String accid;
    private String email;
    private String qq;
    private Integer status;
    private Date lastLogintime;

    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "customer_id")
    public Long getCustomerId() {
        return customerId;
    }

    public void setCustomerId(Long customerId) {
        this.customerId = customerId;
    }

    @OneToOne(cascade=CascadeType.ALL)
    @Fetch(value= FetchMode.SELECT)
    @PrimaryKeyJoinColumn
    public AConsultantEntity getaConsultantEntity() {
        return aConsultantEntity;
    }

    public void setaConsultantEntity(AConsultantEntity aConsultantEntity) {
        this.aConsultantEntity = aConsultantEntity;
    }

    @Basic
    @Column(name = "phone")
    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    @Basic
    @Column(name = "band_phone")
    public Integer getBandPhone() {
        return bandPhone;
    }

    public void setBandPhone(Integer bandPhone) {
        this.bandPhone = bandPhone;
    }

    @Basic
    @Column(name = "wx_openid")
    public String getWxOpenid() {
        return wxOpenid;
    }

    public void setWxOpenid(String wxOpenid) {
        this.wxOpenid = wxOpenid;
    }

    @Basic
    @Column(name = "band_wx")
    public Integer getBandWx() {
        return bandWx;
    }

    public void setBandWx(Integer bandWx) {
        this.bandWx = bandWx;
    }

    @Basic
    @Column(name = "pwd")
    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    @Basic
    @Column(name = "avatar")
    public String getAvatar() {
        return avatar;
    }

    public void setAvatar(String avatar) {
        this.avatar = avatar;
    }

    @Basic
    @Column(name = "avatar_backgrounp")
    public String getAvatarBackgrounp() {
        return avatarBackgrounp;
    }

    public void setAvatarBackgrounp(String avatarBackgrounp) {
        this.avatarBackgrounp = avatarBackgrounp;
    }

    @Basic
    @Column(name = "nickname")
    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    @Basic
    @Column(name = "realname")
    public String getRealname() {
        return realname;
    }

    public void setRealname(String realname) {
        this.realname = realname;
    }

    @Basic
    @Column(name = "follow")
    public Integer getFollow() {
        return follow;
    }

    public void setFollow(Integer follow) {
        this.follow = follow;
    }

    @Basic
    @Column(name = "fans")
    public Integer getFans() {
        return fans;
    }

    public void setFans(Integer fans) {
        this.fans = fans;
    }

    @Basic
    @Column(name = "is_counselor")
    public Integer getIsCounselor() {
        return isCounselor;
    }

    public void setIsCounselor(Integer isCounselor) {
        this.isCounselor = isCounselor;
    }

    @Basic
    @Column(name = "sex")
    public Integer getSex() {
        return sex;
    }

    public void setSex(Integer sex) {
        this.sex = sex;
    }

    @Basic
    @Column(name = "birthday")
    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }

    @Basic
    @Column(name = "marry")
    public Integer getMarry() {
        return marry;
    }

    public void setMarry(Integer marry) {
        this.marry = marry;
    }

    @Basic
    @Column(name = "occu")
    public Integer getOccu() {
        return occu;
    }

    public void setOccu(Integer occu) {
        this.occu = occu;
    }

    @Basic
    @Column(name = "registe_time")
    public Date getRegisteTime() {
        return registeTime;
    }

    public void setRegisteTime(Date registeTime) {
        this.registeTime = registeTime;
    }

    @Basic
    @Column(name = "is_online")
    public Byte getIsOnline() {
        return isOnline;
    }

    public void setIsOnline(Byte isOnline) {
        this.isOnline = isOnline;
    }

    @Basic
    @Column(name = "heart_time")
    public Date getHeartTime() {
        return heartTime;
    }

    public void setHeartTime(Date heartTime) {
        this.heartTime = heartTime;
    }

    @Basic
    @Column(name = "autograph")
    public String getAutograph() {
        return autograph;
    }

    public void setAutograph(String autograph) {
        this.autograph = autograph;
    }

    @Basic
    @Column(name = "balance")
    public BigDecimal getBalance() {
        return balance;
    }

    public void setBalance(BigDecimal balance) {
        this.balance = balance;
    }

    @Basic
    @Column(name = "score")
    public Integer getScore() {
        return score;
    }

    public void setScore(Integer score) {
        this.score = score;
    }

    @Basic
    @Column(name = "alipay_account")
    public String getAlipayAccount() {
        return alipayAccount;
    }

    public void setAlipayAccount(String alipayAccount) {
        this.alipayAccount = alipayAccount;
    }

    @Basic
    @Column(name = "wx_account")
    public String getWxAccount() {
        return wxAccount;
    }

    public void setWxAccount(String wxAccount) {
        this.wxAccount = wxAccount;
    }

    @Basic
    @Column(name = "bank_number")
    public String getBankNumber() {
        return bankNumber;
    }

    public void setBankNumber(String bankNumber) {
        this.bankNumber = bankNumber;
    }

    @Basic
    @Column(name = "bank_account")
    public String getBankAccount() {
        return bankAccount;
    }

    public void setBankAccount(String bankAccount) {
        this.bankAccount = bankAccount;
    }

    @Basic
    @Column(name = "province")
    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    @Basic
    @Column(name = "city")
    public String getCity() {
        return city;
    }

    public void setCity(String city) {
        this.city = city;
    }

    @Basic
    @Column(name = "area")
    public String getArea() {
        return area;
    }

    public void setArea(String area) {
        this.area = area;
    }

    @Basic
    @Column(name = "address")
    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }

    @Basic
    @Column(name = "cert_type")
    public String getCertType() {
        return certType;
    }

    public void setCertType(String certType) {
        this.certType = certType;
    }

    @Basic
    @Column(name = "cert_number")
    public String getCertNumber() {
        return certNumber;
    }

    public void setCertNumber(String certNumber) {
        this.certNumber = certNumber;
    }

    @Basic
    @Column(name = "cert_image")
    public String getCertImage() {
        return certImage;
    }

    public void setCertImage(String certImage) {
        this.certImage = certImage;
    }

    @Basic
    @Column(name = "cert_image2")
    public String getCertImage2() {
        return certImage2;
    }

    public void setCertImage2(String certImage2) {
        this.certImage2 = certImage2;
    }

    @Basic
    @Column(name = "present_pwd")
    public String getPresentPwd() {
        return presentPwd;
    }

    public void setPresentPwd(String presentPwd) {
        this.presentPwd = presentPwd;
    }

    @Basic
    @Column(name = "qgzt")
    public Integer getQgzt() {
        return qgzt;
    }

    public void setQgzt(Integer qgzt) {
        this.qgzt = qgzt;
    }

    @Basic
    @Column(name = "cus_brief")
    public String getCusBrief() {
        return cusBrief;
    }

    public void setCusBrief(String cusBrief) {
        this.cusBrief = cusBrief;
    }

    @Basic
    @Column(name = "member_grade")
    public Integer getMemberGrade() {
        return memberGrade;
    }

    public void setMemberGrade(Integer memberGrade) {
        this.memberGrade = memberGrade;
    }

    @Basic
    @Column(name = "accid")
    public String getAccid() {
        return accid;
    }

    public void setAccid(String accid) {
        this.accid = accid;
    }

    @Basic
    @Column(name = "email")
    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Basic
    @Column(name = "qq")
    public String getQq() {
        return qq;
    }

    public void setQq(String qq) {
        this.qq = qq;
    }

    @Basic
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Basic
    @Column(name = "last_logintime")
    public Date getLastLogintime() {
        return lastLogintime;
    }

    public void setLastLogintime(Date lastLogintime) {
        this.lastLogintime = lastLogintime;
    }

}
